package cn.youqu.happy.module.youqu.convert.userBlack;

import cn.youqu.happy.framework.common.pojo.PageResult;
import cn.youqu.happy.module.youqu.controller.admin.userBlack.vo.*;
import cn.youqu.happy.module.youqu.controller.app.userBlack.vo.AppUserBlackJoinReqVO;
import cn.youqu.happy.module.youqu.controller.app.userBlack.vo.AppUserBlackPageReqVO;
import cn.youqu.happy.module.youqu.controller.app.userBlack.vo.AppUserBlackRespVO;
import cn.youqu.happy.module.youqu.controller.app.userBlack.vo.AppUserBlackUpdateReqVO;
import cn.youqu.happy.module.youqu.dal.dataobject.userBlack.UserBlackDO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;

import java.util.List;

/**
 * 用户黑名单 Convert
 *
 * @author 王其岩 20112001045
 */
@Mapper
public interface UserBlackConvert {

    UserBlackConvert INSTANCE = Mappers.getMapper(UserBlackConvert.class);

    UserBlackDO convert(UserBlackCreateReqVO bean);

    UserBlackDO convert(UserBlackUpdateReqVO bean);

    UserBlackRespVO convert(UserBlackDO bean);

    List<UserBlackRespVO> convertList(List<UserBlackDO> list);

    PageResult<UserBlackRespVO> convertPage(PageResult<UserBlackDO> page);

    List<UserBlackExcelVO> convertList02(List<UserBlackDO> list);

    UserBlackPageReqVO convert(AppUserBlackPageReqVO pageVO);

    PageResult<AppUserBlackRespVO> convertPage0(PageResult<UserBlackDO> pageResult);

    List<AppUserBlackRespVO> convertList0(List<UserBlackDO> list);

    AppUserBlackRespVO convert0(UserBlackDO userBlack);

    UserBlackDO convert(AppUserBlackJoinReqVO joinReqVO);

    UserBlackDO convert(AppUserBlackUpdateReqVO updateReqVO);
}
